package com.ruoyi.quality.domain;

import java.math.BigDecimal;
import java.time.LocalDate;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import io.swagger.v3.oas.annotations.media.Schema;

/**
 * 外部损失管理对象 quality_ex_loss
 *
 * @author wky
 * @date 2024-06-05
 */
@Schema(description = "外部损失管理对象")
public class QualityExLoss extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    /**  */
    @Schema(title = "")
    private Long exLossId;

    /** 退货时间 */
    @Schema(title = "退货时间")
    @Excel(name = "退货时间")
    private LocalDate refuseTime;

    /** 客户id */
    @Schema(title = "客户id")
    @Excel(name = "客户id")
    private Long costumId;

    /** 物料名称 */
    @Schema(title = "物料名称")
    @Excel(name = "物料名称")
    private Long materialId;

    /** 物料图号 */
    @Schema(title = "物料图号")
    @Excel(name = "物料图号")
    private String imageNumber;

    /** 不合格数量 */
    @Schema(title = "不合格数量")
    @Excel(name = "不合格数量")
    private Long unqualifiedCount;

    /** 措施 */
    @Schema(title = "措施")
    @Excel(name = "措施")
    private String measure;

    /** 是否索赔 */
    @Schema(title = "是否索赔")
    @Excel(name = "是否索赔")
    private Long isClaim;

    /** 索赔价格 */
    @Schema(title = "索赔价格")
    @Excel(name = "索赔价格")
    private BigDecimal claimPrice;

    /** 退款损失费用 */
    @Schema(title = "退款损失费用")
    @Excel(name = "退款损失费用")
    private BigDecimal refuseLossPrice;

    /** 维修费用 */
    @Schema(title = "维修费用")
    @Excel(name = "维修费用")
    private BigDecimal fixPrice;

    /** 折扣损失费用 */
    @Schema(title = "折扣损失费用")
    @Excel(name = "折扣损失费用")
    private BigDecimal discountLossPrice;

    /** 诉讼费用 */
    @Schema(title = "诉讼费用")
    @Excel(name = "诉讼费用")
    private BigDecimal litigationPrice;

    @Excel(name = "供应商编号")
    private Long supplierId;
    public void setExLossId(Long exLossId)
    {
        this.exLossId = exLossId;
    }

    public Long getExLossId()
    {
        return exLossId;
    }

    public Long getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(Long supplierId) {
        this.supplierId = supplierId;
    }
    public void setRefuseTime(LocalDate refuseTime)
    {
        this.refuseTime = refuseTime;
    }

    public LocalDate getRefuseTime()
    {
        return refuseTime;
    }


    public void setCostumId(Long costumId)
    {
        this.costumId = costumId;
    }

    public Long getCostumId()
    {
        return costumId;
    }

    public Long getMaterialId() {
        return materialId;
    }

    public void setMaterialId(Long materialId) {
        this.materialId = materialId;
    }

    public void setImageNumber(String imageNumber)
    {
        this.imageNumber = imageNumber;
    }

    public String getImageNumber()
    {
        return imageNumber;
    }


    public void setUnqualifiedCount(Long unqualifiedCount)
    {
        this.unqualifiedCount = unqualifiedCount;
    }

    public Long getUnqualifiedCount()
    {
        return unqualifiedCount;
    }


    public void setMeasure(String measure)
    {
        this.measure = measure;
    }

    public String getMeasure()
    {
        return measure;
    }


    public void setIsClaim(Long isClaim)
    {
        this.isClaim = isClaim;
    }

    public Long getIsClaim()
    {
        return isClaim;
    }


    public void setClaimPrice(BigDecimal claimPrice)
    {
        this.claimPrice = claimPrice;
    }

    public BigDecimal getClaimPrice()
    {
        return claimPrice;
    }


    public void setRefuseLossPrice(BigDecimal refuseLossPrice)
    {
        this.refuseLossPrice = refuseLossPrice;
    }

    public BigDecimal getRefuseLossPrice()
    {
        return refuseLossPrice;
    }


    public void setFixPrice(BigDecimal fixPrice)
    {
        this.fixPrice = fixPrice;
    }

    public BigDecimal getFixPrice()
    {
        return fixPrice;
    }


    public void setDiscountLossPrice(BigDecimal discountLossPrice)
    {
        this.discountLossPrice = discountLossPrice;
    }

    public BigDecimal getDiscountLossPrice()
    {
        return discountLossPrice;
    }


    public void setLitigationPrice(BigDecimal litigationPrice)
    {
        this.litigationPrice = litigationPrice;
    }

    public BigDecimal getLitigationPrice()
    {
        return litigationPrice;
    }



    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("exLossId", getExLossId())
            .append("refuseTime", getRefuseTime())
            .append("costumId", getCostumId())
            .append("materialName", getMaterialId())
            .append("imageNumber", getImageNumber())
            .append("unqualifiedCount", getUnqualifiedCount())
            .append("measure", getMeasure())
            .append("isClaim", getIsClaim())
            .append("claimPrice", getClaimPrice())
            .append("refuseLossPrice", getRefuseLossPrice())
            .append("fixPrice", getFixPrice())
            .append("discountLossPrice", getDiscountLossPrice())
            .append("litigationPrice", getLitigationPrice())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .toString();
    }
}
